package com.lhx.product.mapper;

import com.lhx.product.domain.Product;
import com.lhx.product.domain.dto.ProductDTO;
import com.lhx.product.domain.dto.ProductQueryParam;
import com.lhx.product.domain.po.ProductPO;
import com.lhx.product.domain.vo.ProductVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;


import java.util.List;


public interface ProductMapper {



    /**
     * 商品列表
     * @param productVO
     * @return
     */
    List<ProductPO> findProductAll(ProductVO productVO);

    /**
     * 商品删除
     * @param id
     * @return
     */
    void productDele(@Param("id") String id);

    /**
     * 商品修改
     * @param ProductPO
     * @return
     */
    void productUpdate(ProductPO ProductPO);

    /**
     * 商品添加
     * @param ProductPO
     * @return
     */
    void productAdd(ProductPO ProductPO);

    /**
     * 商品添加ALL
     * @param dto
     * @return
     */
    int productAdds(ProductDTO dto);

    /**
     * 分类列表
     * @param productQueryParam
     * @return
     */
    List<ProductVO> list(ProductQueryParam productQueryParam);

    int insertSelective(Product product);

    /**
     * 查询货号
     * @param productSn
     * @return
     */
    Integer find(@Param("productSn") String productSn);

    int updateByPrimaryKeySelective(Product product);
}
